﻿namespace KinonekoSoftware.CodariaDB.Documents.DataParts.Modules
{
    public sealed class Block_Degree : ModuleBlock
    {
        public static Block_Degree CreateInstance() => new Block_Degree
        {
            Id          = ID.Get(),
            Title       = "难易程度分组设定",
            Description = "用来表现对某件事的好恶程度，经常用于表现性格、习惯、喜好。",
            Items = new List<Element_Degree>
            {
                new Element_Degree { Id = ID.Get(), Title = "体质", Negative    = "好", Positive  = "坏", Value  = 3 },
                new Element_Degree { Id = ID.Get(), Title = "生命力", Negative   = "弱", Positive  = "强", Value  = 4 },
                new Element_Degree { Id = ID.Get(), Title = "求人的态度", Negative = "傲慢", Positive = "谦逊", Value = 5 },
                new Element_Degree { Id = ID.Get(), Title = "信誉", Negative    = "糟糕", Positive = "绝佳", Value = 6 },
            },
        };

        public override ModuleBlock Clone() => new Block_Degree
        {
            Id          = Id,
            Title       = Title,
            Description = Description,
            Items       = Items.Select(x => (Element_Degree)x.Clone()).ToList(),
        };

        public required List<Element_Degree> Items { get; init; }
    }
}